package bsf.baseservice.businessmq.redis.messagelock;

import bsf.base.CallBack;
import bsf.base.TimeSpan;

/**
 发送消息锁
 发送消息合并,合并n时间内的请求
 发送消息不允许阻塞
 
*/
public class SendMessageLock extends BaseMessageLock
{
	public SendMessageLock(TimeSpan mergetime)
	{
		super(mergetime);

	}

	@Override
	public void lock(CallBack.Func0 action)
	{
		isHaveNewMessage=true;
		if (isLock==false) //判断当前是否并发，并发情况下则跳过，视为请求合并
		{
			action.invoke(); //异步 C#是异步,java改为同步
		}
	}


}